#ifndef _SYS_UNKNOWN_POD_ERR_H_
#define _SYS_UNKNOWN_POD_ERR_H_

#include "Err.h"
#include "SysTypes.h"

#define UNKNOWN_POD_ERR_VTABLE(self)   ((UnknownPodErrVTable*)((FanObj*)self)->vtable)


extern Type*    UnknownPodErr_classType;
extern VTable*  UnknownPodErr_classVTable;


/* [sys::UnknownPodErr] Attributes */
struct UnknownPodErr
{
  Err           super;
};


/* [sys::UnknownPodErr] Virtual-table */
typedef struct UnknownPodErrVTable
{
  ErrVTable     super;
} UnknownPodErrVTable;


/* [sys::UnknownPodErr] Methods and fields */
void            UnknownPodErr_make_0(UnknownPodErr* self);
void            UnknownPodErr_make_1(UnknownPodErr* self, Str* msg);
void            UnknownPodErr_make(UnknownPodErr* self, Str* msg, Err* cause);


/* [sys::UnknownPodErr] Extra methods */
UnknownPodErr*  UnknownPodErr_new(Str* msg, Err* cause);
UnknownPodErr*  UnknownPodErr_newWithFormattedMsg(const char* msgFormat, ...);


/* [sys::UnknownPodErr] Type-system functions */
Type*           UnknownPodErr_initType(void);
VTable*         UnknownPodErr_initVTable(void);
void            UnknownPodErr_initStatic(void);


#endif
